﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Values;

namespace WorkFlowCore.Plugins
{
    public class PluginId : ValueObject
    {
        public PluginId(string className, string name, string nntryFullName)
        {
            ClassName = className;
            Name = name;
            EntryFullName = nntryFullName;
        }


        /// <summary>
        /// 类型名称
        /// </summary>
        public string ClassName { get; private set; }
        /// <summary>
        /// 插件名称
        /// </summary>
        public string Name { get; private set; }
        /// <summary>
        /// 全称
        /// </summary>
        public string EntryFullName { get;private set; }

        protected override IEnumerable<object> GetAtomicValues()
        {
            yield return ClassName; 
            yield return Name;
            yield return EntryFullName;
        }
    }
}
